<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        //函数作为参数进行传递
        // function show(){
        //     console.log(1);
        // }
        // function test(){
        //     //函数中隐含拥有一个对象 arguments(参数列表)
        //     console.log(arguments);
        //     console.log(arguments[0]);
        //     arguments[1]();
        // }
        // test(3,show);

        //函数作为返回值进行传递,该函数必须是匿名函数
        // function show(a, b) {
        //     console.log(a, b);
        //     return function (x, y) {
        //         console.log(x, y);
        //         return x + y;
        //     }
        // }
        // show(1, 2);
        // show(1,2)(3,4);

        function test(x, y) {
            var n = 1;
            console.log(x, y, n);
            n++;
            return function (a, b) {
                var k = 2;
                console.log(a, b, n, k);
                return a + b;
            }
        }
        var fn = test(3, 4);
        console.log(fn);

    </script>
</body>

</html>